package org.lanqiao.demo;

import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

/**
 * 1.集合：java将一组数据作为一个管理单元进行管理，存储的都是对象类型
 *   操作：存储 ，读取，遍历，查找。排序
 * 2.java中的集合分为俩大类：
 * 		Collection接口:
 * 3.set集合是采用hash散列算法进行
 *   总结：集合中凡是采用hash三列存储的集合都没有下标，不能通过下标来进行读取元素的值
 * 4.HashSet
 *   增强型for循环遍历
 *   Iterator迭代器遍历
 *
 * @author 小逗逼
 *
 */
public class Test01 {
	public static void main(String[] args) {
		test01();
			}
	/**
			 * HashSet用法
			 */
			public static void test01() {
				// 创建一个set集合对象
				// 多态：父类指代子类
				Set set0 = new HashSet();
		
		
				// 遍历set集合中的个元素
				System.out.println("\n增强型的for循环遍历：");
				for (Object obj : set0) {
					System.out.println(obj.toString());
				}
		
				System.out.println("Iterator迭代器遍历");
				// 获取集合的迭代器对象
				Iterator it = set0.iterator();
				// it.hasNext() 判定有没有下一个元素，注意：开始位置是在第一个元素之前；
				while (it.hasNext()) {
					// 使用迭代器的 next方法获取要遍历的元素对象
					Object obj = it.next();
					System.out.println(obj.toString());
				}
		
				System.out.println("=================");
				if (set0.contains("lisi")) {
					System.out.println("包含李四");
				} else {
					System.out.println("不包含李四");
				}
			}
		}


